Section: Software
CoLoR and Rainbow
Participants : Frédéric Blanqui [correspondant] , Kim-Quyen Ly, Sidi Ould Biha.
CoLoR is a Coq [44] library on rewriting theory and termination of nearly 70,000 lines of code [11] . it provides definitions and theorems for:
-
Mathematical structures: relations, (ordered) semi-rings.
-
Data structures: lists, vectors, polynomials with multiple variables, finite multisets, matrices.
-
Term structures: strings, algebraic terms with symbols of fixed arity, algebraic terms with varyadic symbols, simply typed lambda-terms.
-
Transformation techniques: conversion from strings to algebraic terms, conversion from algebraic to varyadic terms, arguments filtering, rule elimination, dependency pairs, dependency graph decomposition, semantic labelling.
-
Termination criteria: polynomial interpretations, multiset ordering, lexicographic ordering, first and higher order recursive path ordering, matrix interpretations.
Rainbow is a tool for automatically certifying termination certificates expressed in the CPF XML format [29] used in the termination competition on termination [32] . Termination certificates are translated and checked in Coq by using the CoLoR library.
CoLoR and Rainbow are distributed under the CeCILL license on http://color.inria.fr/ . Various people participated to its development (see the website for more information).